package ydy;


import org.weixin4j.Weixin;
import org.weixin4j.message.OutputMessage;
import org.weixin4j.message.normal.*;
import org.weixin4j.message.output.TextOutputMessage;
import org.weixin4j.spi.INormalMessageHandler;

/**
 * @author ydy
 * @version 2018/4/29  15:33
 */
public class UserNormalMessageHandler implements INormalMessageHandler {

    private OutputMessage allType(NormalMessage msg) {
        System.out.println(msg);
        TextOutputMessage out = new TextOutputMessage();
        out.setContent("666！");
        return out;
    }

    /**
     * 文字信息
     * @param msg
     * @return
     */
    @Override
    public OutputMessage textTypeMsg(TextInputMessage msg) {
        System.out.println(msg.getMsgType());
        System.out.println(msg.getContent());
        System.out.println(msg.getToUserName());
        System.out.println(msg.getCreateTime());
        System.out.println(msg.getMsgId());
        System.out.println(msg.getFromUserName());
        Weixin weixin = new Weixin();
        String access_token = weixin.getOAuthToken().getAccess_token();
        System.out.println(access_token);
        return allType(msg);
    }

    /**
     * 图片信息
     * @param msg
     * @return
     */
    @Override
    public OutputMessage imageTypeMsg(ImageInputMessage msg) {

        return allType(msg);
    }

    /**
     *语音信息
     * @param msg
     * @return
     */
    @Override
    public OutputMessage voiceTypeMsg(VoiceInputMessage msg) {
        return allType(msg);
    }

    /**
     * 视频信息
     * @param msg
     * @return
     */
    @Override
    public OutputMessage videoTypeMsg(VideoInputMessage msg) {
        return allType(msg);
    }

    /**
     *小视频信息
     * @param msg
     * @return
     */
    @Override
    public OutputMessage shortvideoTypeMsg(ShortVideoInputMessage msg) {
        return allType(msg);
    }

    /**
     *地理位置信息
     * @param msg
     * @return
     */
    @Override
    public OutputMessage locationTypeMsg(LocationInputMessage msg) {
        return allType(msg);
    }

    /**
     *英领信息
     * @param msg
     * @return
     */
    @Override
    public OutputMessage linkTypeMsg(LinkInputMessage msg) {
        return allType(msg);
    }
}
